public class StringBuilder_ {

    public static String func2(){
        // StringBuffer或者StringBuilder如果变String ：toString()
        StringBuffer str = new StringBuffer("abcdef");
        return str.toString();
    }

    public static StringBuffer func(){
        // String如果变StringBuffer或者StringBuilder
        // 可以利用append方法和构造方法
        String str = "abcdef";
        StringBuffer sb = new StringBuffer();
        sb.append(str);
//        return new StringBuffer(str);
        return sb;
    }

    public static void main(String[] args) {
        // StringBuffer 和 StringBuilder 的区别
        StringBuilder sb = new StringBuilder("abcdef");
        sb.reverse();// 翻转
        StringBuffer sb2 = new StringBuffer("ancdefg");
        sb2.reverse();

        // StringBuffer的方法能保证线程安全，但是StringBuilder的运行速度更快，单线程的话用StringBuilder
    }

    public static void main2(String[] args) {
        String str = "abcdef";
        str += "123";
        System.out.println(str);
    }

    public static void main1(String[] args) {
        StringBuilder sb = new StringBuilder("abcd");
        sb.append("12345");// 返回原对象，在后面追加
        System.out.println(sb);// 调toString方法，最后new了个String

    }
}
